[19/36] Add OC-110 runtime authoring UX - #52
Conversation
49adf6e to
e5bd5d3
Compare
37c22d0 to
78e18b2
Compare
e5bd5d3 to
1ef759a
Compare
78e18b2 to
cd30321
Compare
1ef759a to
c6c652c
Compare
cd30321 to
eac73cf
Compare
|
Verdict: approve with nits. Verified the important correctness properties directly: disabled assertions, actions and variables are all honored by the runtime (runtimeExecutionService.ts:306, :344, :477), gRPC loadRequest reads the right metadata source, method/params stay gated to http/graphql so they don't pollute WS/gRPC models, and all interpolation goes through the existing esc() helper so no new webview injection surface.
Tests: good model-layer coverage (per-protocol round-trips with Ajv validation, unsupported-row preservation, full CRUD and reorder). Gap: nothing drives the actual webview DOM path (moveRuntimeRow, collectRuntimeModel, checkbox to disabled), that glue is only exercised via source-string assertions. Deps: none added. |
|
Re-review (whole-stack pass, per REVIEW_GUIDE.md) The gRPC editing claim from the #40 thread ( New:
Prior findings (incomplete rows dropped on save, description collapse on edit, source-text test assertions, no DOM-path tests) all still open. The last one is why the high finding above ships uncaught: the model-layer tests bypass the DOM. Verdict: changes-needed. The quote corruption damages user-authored runtime YAML through normal editing and no current test can catch it. The model-layer round-trip safety is otherwise solid. |
|
I addressed the valid findings and pushed the PR-owned fixes in
The stale OC-110 evidence hashes were also valid findings. I corrected all five occurrences from Validation on PR 52: TypeScript compile passed, all 436 tests passed, and the production build passed. I also composed the updated PR 49, PR 51, PR 52, and stack-tip rework changes: compile passed, all 505 tests passed, and the production build passed. The pre-push stack check initially detected that adding tests to |
|
Response to the second review: all of these findings were valid and are fixed on this PR's current head, 5fe2bd8. The webview escape function now preserves both quote types in attribute values, with DOM-path tests for bracket expressions, quoted JSON values, and descriptions. Saving a message-less gRPC request no longer injects Verification on the exact final composite passes build, TypeScript compile, 31 files / 539 tests, and 47/47 demo validation. No additional change is required for PR #52. |
This is part 4 of 21 in a stack made with GitButler: